package cn.akwangl.user.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.util.Date;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 个人用户
 * </p>
 *
 * @author 阿坤
 * @since 2019-09-11
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_personal_user")
public class PersonalUserDO extends Model<PersonalUserDO> {

    private static final long serialVersionUID = 1L;

    /**
     * 用户id唯一标识号
     */
    @TableId("user_uuid")
    private String userUuid;

    /**
     * 用户名
     */
    @TableField("username")
    private String username;

    /**
     * 用户姓名
     */
    @TableField("name")
    private String name;

    /**
     * 密码
     */
    @TableField("password")
    private String password;

    /**
     * 加密盐值
     */
    @TableField("salt")
    private String salt;

    /**
     * 邮箱
     */
    @TableField("email")
    private String email;

    /**
     * 手机号
     */
    @TableField("mobile")
    private String mobile;

    /**
     * 人脸地址
     */
    @TableField("img_address")
    private String imgAddress;

    /**
     * 个人头像地址
     */
    @TableField("header_address")
    private String headerAddress;

    /**
     * 身份证
     */
    @TableField("identity_card")
    private String identityCard;

    /**
     * 性别：0：未知 1：男 2：女
     */
    @TableField("sex")
    private Integer sex;

//    /**
//     * 出生日期
//     */
//    @TableField("birth_date")
//    private LocalDate birthDate;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;

    /**
     * 状态 0:禁用，1:正常，2:注册, 3:游客
     */
    @TableField("status")
    private Integer status;


    @Override
    protected Serializable pkVal() {
        return this.userUuid;
    }

}
